/*
 * @(#) PageEntity.java 2011-6-8
 *
 * Copyright (c) 2011, Strong Technology. All Rights Reserved.
 * Strong Technology. CONFIDENTIAL
 */
package cn.strong.gweva.common.business.entity;

import java.io.Serializable;
import java.math.BigDecimal;


/**
 * @author lilanfei
 */
public class PageEntity implements Serializable {

	private static final long serialVersionUID = 1L;
	
	/** 总件数*/
	private BigDecimal pageCount;
	
	/** 总页数*/
	@SuppressWarnings("unused")
	private BigDecimal totalPage;
	
	/** 每页显示多少件*/
	private BigDecimal pageSize;
	
	/** 当前显示页数*/
	private BigDecimal pageNow;
	
	/** 开始件数*/
	@SuppressWarnings("unused")
	private BigDecimal pageStart;
	
	/** 结束件数*/
	@SuppressWarnings("unused")
	private BigDecimal pageEnd;

	/**
	 * @return pageCount
	 */
	public BigDecimal getPageCount()
	{
		return pageCount;
	}

	/**
	 * @param pageCount pageCount
	 */
	public void setPageCount(BigDecimal pageCount)
	{
		this.pageCount = pageCount;
	}

	/**
	 * @return totalPage
	 */
	public BigDecimal getTotalPage()
	{
		if(pageCount == null)
		{
			return new BigDecimal("0");
		}
		else
		{
			return pageCount.compareTo(new BigDecimal("0")) == 0? pageCount :(pageCount.intValue() % pageSize.intValue()) == 0? new BigDecimal(pageCount.intValue() / pageSize.intValue()) : new BigDecimal((pageCount.intValue() / pageSize.intValue()) + 1);
		}
		
	}

	/**
	 * @param totalPage totalPage
	 */
	public void setTotalPage(BigDecimal totalPage)
	{
		this.totalPage = totalPage;
	}

	/**
	 * @return pageSize
	 */
	public BigDecimal getPageSize()
	{
		return pageSize;
	}

	/**
	 * @param pageSize pageSize
	 */
	public void setPageSize(BigDecimal pageSize)
	{
		this.pageSize = pageSize;
	}

	/**
	 * @return pageNow
	 */
	public BigDecimal getPageNow()
	{
		if(pageNow == null)
		{
			pageNow = new BigDecimal(0);
		}
		return pageNow;
	}

	/**
	 * @param pageNow pageNow
	 */
	public void setPageNow(BigDecimal pageNow)
	{
		this.pageNow = pageNow;
	}

	/**
	 * @return pageStart
	 */
	public BigDecimal getPageStart()
	{
		if(this.getPageNow() == null)
		{
			return new BigDecimal("0");
		}
		else
		{
			return this.getPageNow().multiply(this.getPageSize());
		}
	}

	/**
	 * @param pageStart pageStart
	 */
	public void setPageStart(BigDecimal pageStart)
	{
		this.pageStart = pageStart;
	}

	/**
	 * @return pageEnd
	 */
	public BigDecimal getPageEnd()
	{
		if(this.getPageNow() == null)
		{
			return new BigDecimal("0");
		}
		else
		{
			return (this.getPageNow().add(new BigDecimal("1"))).multiply(this.getPageSize());
		}
	}

	/**
	 * @param pageEnd pageEnd
	 */
	public void setPageEnd(BigDecimal pageEnd)
	{
		this.pageEnd = pageEnd;
	}
	
	
}
